Web应用防火墙(Web Application Firewall,简称WAF)为了完成日志服务、资产识别、透明接入的功能,需要获取其他云服务的访问权限。所以,在您首次登录WAF控制台时,必须先授予WAF访问相关云资源的权限,授权后才能正常使用WAF提供的其他云服务的功能。本文介绍了如何进行云资源访问授权。
服务关联角色说明
以下是WAF服务关联角色的介绍:
角色名称:AliyunServiceRoleForWAF
权限策略名称:AliyunServiceRolePolicyForWAF
说明该权限策略为系统默认提供的策略,策略名称和策略内容都不支持修改。
权限策略:
{ "Version": "1", "Statement": [ { "Action": [ "ecs:DescribeInstances", "ecs:DescribeNetworkInterfaces", "ecs:CreateNetworkInterface", "ecs:DeleteNetworkInterface", "ecs:AttachNetworkInterface", "ecs:DetachNetworkInterface", "ecs:DescribeNetworkInterfacePermissions", "ecs:CreateNetworkInterfacePermission", "ecs:DeleteNetworkInterfacePermission", "ecs:DescribeSecurityGroups", "ecs:DescribeSecurityGroupAttribute", "ecs:CreateSecurityGroup", "ecs:DeleteSecurityGroup", "ecs:AuthorizeSecurityGroup", "ecs:RevokeSecurityGroup", "ecs:DescribeDisks" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "slb:DescribeServerCertificates", "slb:DescribeDomainExtensions", "slb:DescribeLoadBalancers", "slb:DescribeListenerAccessControlAttribute", "slb:DescribeLoadBalancerAttribute", "slb:DescribeLoadBalancerHTTPListenerAttribute", "slb:DescribeLoadBalancerHTTPSListenerAttribute", "slb:DescribeLoadBalancerTCPListenerAttribute", "slb:DescribeLoadBalancerUDPListenerAttribute", "slb:DescribeTLSCipherPolicies", "slb:ListTLSCipherPolicies", "slb:DescribeLoadBalancers" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "alb:ListLoadBalancers", "alb:GetLoadBalancerAttribute", "alb:ListListeners", "alb:GetListenerAttribute", "alb:ListListenerCertificates", "alb:DescribeRegions", "alb:ListSystemSecurityPolicies", "alb:ListSecurityPolicies" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "vpc:DescribeEipAddresses" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "cdn:DescribeUserDomains", "cdn:DescribeCdnDomainDetail", "cdn:DescribeDomainsBySource", "cdn:DescribeUserVipsByDomain" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "yundun-cert:DescribeUserCertificateList" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "log:PostLogStoreLogs", "log:GetProject", "log:ListProject", "log:GetLogStore", "log:ListLogStores", "log:CreateLogStore", "log:CreateProject", "log:GetIndex", "log:CreateIndex", "log:UpdateIndex", "log:CreateDashboard", "log:ClearLogStoreStorage", "log:UpdateLogStore", "log:UpdateDashboard", "log:DeleteProject", "log:CreateSavedSearch", "log:UpdateSavedSearch", "log:DeleteLogStore" ], "Resource": "acs:log:*:*:project/waf*", "Effect": "Allow" }, { "Action": "ram:DeleteServiceLinkedRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": "waf.aliyuncs.com" } } } ] }
关于权限策略语法的详细说明,请参见权限策略基本元素。
前提条件
已购买WAF实例。
- 确保使用的是阿里云账号或拥有创建和删除服务关联角色权限的RAM用户身份。
创建服务关联角色
通过日志服务
只有当您已将网站业务接入WAF防护且开通了WAF日志服务,才可以使用该方式创建服务关联角色。关于网站接入的具体操作,请参见添加域名;关于开通WAF日志服务的具体操作,请参见快速使用WAF日志服务。
登录Web应用防火墙控制台,在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
在左侧导航栏,选择 。
单击立即授权,并在提示对话框,单击确定。
通过开通资产识别
只有中国内地WAF实例支持资产识别功能。如果您使用非中国内地WAF实例,请选择通过日志服务或透明接入创建服务关联角色。
登录Web应用防火墙控制台,在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
在左侧导航栏,选择 。
单击免费开通,并在提示对话框,单击确定。
通过开通透明接入
登录Web应用防火墙控制台,在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
在左侧导航栏,选择 。
在域名列表页签,单击网站接入。
将接入模式设置为透明接入,并单击免费开通,在提示对话框,单击确定。
完成后,阿里云将自动为您创建WAF服务关联角色AliyunServiceRoleForWAF。您可以在RAM控制台的 页面,查看阿里云为WAF自动创建的服务关联角色。
删除服务关联角色
如果不需要使用WAF,您可以删除其关联角色AliyunServiceRoleForWAF。具体操作,请参见删除RAM角色。
只有当WAF实例已经过期并自动释放后,您才可以删除服务关联角色。
登录RAM控制台。
在左侧导航栏,选择 。
使用搜索功能,定位到WAF服务关联角色AliyunServiceRoleForWAF,单击操作列的删除。
单击确定。
访问控制RAM会先检查WAF服务关联角色是否仍被WAF实例使用:
如果为否,WAF服务关联角色将被直接删除。
如果为是,您暂不能删除WAF服务关联角色,但可以查看哪些WAF实例在使用该角色。您必须先释放对应的WAF实例,才可以删除WAF服务关联角色。
常见问题
为什么我的RAM用户无法自动创建WAF服务关联角色AliyunServiceRoleForWAF?
您需要拥有指定的权限,才能自动创建或删除服务关联角色。因此,在RAM用户无法自动创建AliyunServiceRoleForWAF时,您需为RAM用户添加以下权限策略。详细操作步骤指导,请参见为RAM角色授权。
{
"Statement": [
{
"Action": [
"ram:CreateServiceLinkedRole"
],
"Resource": "acs:ram:*:主账号ID:role/*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": [
"waf.aliyuncs.com"
]
}
}
}
],
"Version": "1"
}